package com.opal.jx.service;

import com.opal.domain.R;
import com.opal.jx.entity.JxAssessReception;
import com.opal.jx.entity.table.JxAssessBzcj;
import com.opal.jx.entity.table.JxPost;

import java.util.List;

public interface JxBZCJService{

    public List<JxAssessBzcj> selectJxAssessBzcjByCondition(JxAssessBzcj condition);

    /**
     * 添加绩效数据
     * @param jxAssessReception
     * @return
     */
    R addAssessDataService(JxAssessReception jxAssessReception);

    /**
     * 根据条件先包装车间的绩效数据若没有查询员工中的所属的部门、组别、岗位名称来获取员工信息
     * @param jxAssessReception
     * @return
     */
    List<JxAssessBzcj>  selectJxAssessBzcjService(JxAssessReception jxAssessReception);

    /**
     * 根据组织、部门编码、岗位名称获取该员工的信息
     * @param jxAssessReception
     * @return
     */
    Object selectBZCJAllGroupLeader(JxAssessReception jxAssessReception);

    /**
     * 根据年月获取当月的辅助人员的数据
     * @param jxAssessReception
     * @return {
     *     fuZhuRenYuan:[
     *         {empName:"测试一",empCode:"001",zuZhangName:"测试五",zhuGuanName:"x"},
     *         {empName:"测试二",empCode:"002",zuZhangName:"测试五",zhuGuanName:"x"},
     *         ],
     *     fuZhuZuZhang:[
     *         {empName:"测试五",empCode:"005",zuZhangName:"测试五",zhuGuanName:"x"},
     *         {empName:"测试六",empCode:"006",zuZhangName:"测试六",zhuGuanName:"x"},
     *     ],
     *     fuZhuZaGong:[
     *         {empName:"测试七",empCode:"007",zuZhangName:"测试七",zhuGuanName:"x"},
     *     ],
     * }
     */
    Object selectBzcjFuZhuRenYuanService(JxAssessReception jxAssessReception);

    /**
     * 保存包装人员辅助人员数据
     * @param jxAssessReception
     * @return
     */
    Object addBzcjFuZhuRenYuanService(JxAssessReception jxAssessReception);

    /**
     * 根据年月从绩效表中获取主管的所有数据
     * @param year
     * @param month
     * @return
     */
    Object getBzcjZhuGuanJxAssessService(Integer year,Integer month);

    /**
     * 查询员工表获取主管的数据
     * @param jxAssessReception
     * @return
     */
    Object selectBzcjZhuGuanByEmpService(JxAssessReception jxAssessReception);

    /**
     * 保存主管表中的数据
     * @param jxAssessReception
     * @return
     */
    Object saveZhuGuanAssessDataService(JxAssessReception jxAssessReception);
}
